package com.example.kaogong.sys.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.example.kaogong.common.utils.RespBean;
import com.example.kaogong.sys.pojo.CourseComment;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.kaogong.sys.pojo.dto.CourseCommentDto;
import com.example.kaogong.sys.pojo.vo.CourseCommentVo;

/**
 * <p>
 * 课程讨论 服务类
 * </p>
 *
 * @author    
 * @since 2022-03-31
 */
public interface ICourseCommentService extends IService<CourseComment> {

    /**
     * 当前登录用户对某一门课程进行评论
     * @param courseCommentDto
     * @param name
     * @return
     */
    RespBean addCourseComment(CourseCommentDto courseCommentDto, String name);

    /**
     * 分页获取课程评论
     * @param current
     * @param size
     * @param courseId
     * @param commentId
     * @return
     */
    RespBean<Page<CourseCommentVo>> getCourseComment(Long current, Long size, Integer courseId, Integer commentId);

    /**
     * 管理员屏蔽某条评论
     * @param commentId
     * @return
     */
    RespBean shieldComment(Integer commentId);

    /**
     * 当前登录用户删除自己的一条评论
     * @param commentId
     * @param name
     * @return
     */
    RespBean deleteComment(Integer commentId, String name);

    /**
     * 当前登录用户点赞一条评论
     * @param commentId
     * @param name
     * @return
     */
    RespBean likeComment(Integer commentId, String name);
}
